// 方式一
//
// 时间：104ms - 60.00%
var nthUglyNumber = function(n) {
  let l2 = 0,
    l3 = 0,
    l5 = 0,
    arr = new Array(n);
  arr[0] = 1;
  for (let i = 1; i < n; i++) {
    let min = Math.min(arr[l2] * 2, arr[l3] * 3, arr[l5] * 5);
    arr[i] = min;
    if (min == arr[l2] * 2) {
      l2++;
    }
    if (min == arr[l3] * 3) {
      l3++;
    }
    if (min == arr[l5] * 5) {
      l5++;
    }
  }
  return arr[n - 1];
};

console.log(nthUglyNumber(4));
